Web page developers commonly design web pages to conform to certain requirements (e.g., extensible hypertext markup language conformance, business rules, style rules, accessibility, etc.). The intent of these rules is to enforce a standard such that third party client software may interpret the information is a consistent manner commiserate with best practices. For example, the Web Content Accessibility Guidelines (WCAG) explain how to make web content accessible to people with disabilities. Section 508 of the Americans with Disabilities Act (ADA) requires Federal agencies to make their electronic and information technology accessible to people with disabilities. These accessibility rules eliminate barriers in information technology, present new opportunities to people with disabilities, and encourage development of technologies focused on these goals.
Private industry and research entities have also begun demonstrating significant initiative in improving information technology access for people with disabilities. For example, blind users of the Web frequently use software called a screen reader to read the contents of a web page out loud. Screen readers allow users to hear the contents of a web page rather than read them. However, a screen reader can only read text, not images or animations. Thus, it is important that images and animations have text descriptions associated with them for a screen reader to use. This text is referred to as alternate text.
Rules may be difficult to enforce when responding to a client because an abstraction may exist between the original code and the response. For example, a web page developer may easily design a run time component on dynamically created web page (e.g., an ASP.NET page) that is accessible to people with disabilities. However, the developer may neglect to include critical information on the page such that the component is rendered inaccessible. For example, the developer may forget to provide an image tag with an alternate text property. The developer is not informed that the component is inaccessible until after the page is compiled and the corresponding hypertext markup language (HTML) is generated. The HTML is presented to an accessibility rule checker that generates an error message when the component is inaccessible. The error message indicates where the error occurred in the HTML. However, the developer is not informed where the information was omitted on the ASP.NET page. This is problematic because the HTML tags do not directly correspond to the tags on the ASP.NET page.